The Nintendo 64 game machine is made up of a variety of resources including the CPU, memory, memory bus bandwidth, I/O devices, the RSP, the RDP, and peripheral devices. The software is designed to provide raw access to all of these resources. The software layer basically translates logical functions and arguments into exact hardware register settings.
Management of most resources is left up to the game itself. Resources such as processor access and memory usage are too precious to waste by using some general management algorithm that is not tailored to a particular game's requirement. The only management layers provided are the audio playback and I/O device access. If you prefer, you can add additional management layers by using NuSystem. You can learn more about NuSystem from the NuSystem Manual.
The audio playback mechanism is fairly consistent from game to game. Only the sounds themselves are different. Therefore, a general tool to stream audio playback is useful. The I/O devices can be managed to provide simultaneous multiple access contexts for different threads. For example, streaming audio data and paging in the graphics database might require sharing access to the ROM in the N64 Game Pak.
The following figure gives a summary overview of the N64 hardware architecture. For details, please see the N64 Programming Manual. Basically, the RCP (in the center of the following figure) is the primary workhorse of the N64. All data passes through the RCP.
Nintendo® Confidential
Copyright © 1999
Nintendo of America Inc. All Rights Reserved
Nintendo and N64 are registered trademarks of Nintendo
Last Updated March, 1999